package pe.gob.sunarp.entidad;

import java.io.Serializable;
import javax.persistence.*;
import java.util.Date;
import java.util.Set;


/**
 * The persistent class for the CONVENIO database table.
 * 
 */
@Entity
@Table(name="CONVENIO")
public class Convenio implements Serializable {
	private static final long serialVersionUID = 1L;
	private long codConvenio;
	private String codEntidad;
	private String descripcion;
	private String estado;
	private Date fechaFin;
	private Date fechaInicio;
	private Date fechaSuscripcion;
	private String noEntidad;
	private String prefijo;
	private Set<TransConvenio> transConvenios;
	private Set<UsrConvenio> usrConvenios;

    public Convenio() {
    }


	@Id
	@GeneratedValue(strategy=GenerationType.AUTO)
	@Column(name="COD_CONVENIO", unique=true, nullable=false)
	public long getCodConvenio() {
		return this.codConvenio;
	}

	public void setCodConvenio(long codConvenio) {
		this.codConvenio = codConvenio;
	}


	@Column(name="COD_ENTIDAD", length=4)
	public String getCodEntidad() {
		return this.codEntidad;
	}

	public void setCodEntidad(String codEntidad) {
		this.codEntidad = codEntidad;
	}


	@Column(length=200)
	public String getDescripcion() {
		return this.descripcion;
	}

	public void setDescripcion(String descripcion) {
		this.descripcion = descripcion;
	}


	@Column(length=1)
	public String getEstado() {
		return this.estado;
	}

	public void setEstado(String estado) {
		this.estado = estado;
	}


    @Temporal( TemporalType.DATE)
	@Column(name="FECHA_FIN")
	public Date getFechaFin() {
		return this.fechaFin;
	}

	public void setFechaFin(Date fechaFin) {
		this.fechaFin = fechaFin;
	}


    @Temporal( TemporalType.DATE)
	@Column(name="FECHA_INICIO")
	public Date getFechaInicio() {
		return this.fechaInicio;
	}

	public void setFechaInicio(Date fechaInicio) {
		this.fechaInicio = fechaInicio;
	}


    @Temporal( TemporalType.DATE)
	@Column(name="FECHA_SUSCRIPCION")
	public Date getFechaSuscripcion() {
		return this.fechaSuscripcion;
	}

	public void setFechaSuscripcion(Date fechaSuscripcion) {
		this.fechaSuscripcion = fechaSuscripcion;
	}


	@Column(name="NO_ENTIDAD", length=100)
	public String getNoEntidad() {
		return this.noEntidad;
	}

	public void setNoEntidad(String noEntidad) {
		this.noEntidad = noEntidad;
	}


	@Column(length=8)
	public String getPrefijo() {
		return this.prefijo;
	}

	public void setPrefijo(String prefijo) {
		this.prefijo = prefijo;
	}


	//bi-directional many-to-one association to TransConvenio
	@OneToMany(mappedBy="convenio")
	public Set<TransConvenio> getTransConvenios() {
		return this.transConvenios;
	}

	public void setTransConvenios(Set<TransConvenio> transConvenios) {
		this.transConvenios = transConvenios;
	}
	

	//bi-directional many-to-one association to UsrConvenio
	@OneToMany(mappedBy="convenio")
	public Set<UsrConvenio> getUsrConvenios() {
		return this.usrConvenios;
	}

	public void setUsrConvenios(Set<UsrConvenio> usrConvenios) {
		this.usrConvenios = usrConvenios;
	}
	
}